1. Field of the Invention
This invention relates generally to an improvement in error logging, and more specifically to providing error ordering information and extensive error logging information for errors occurring in a data processing system.
2. Description of the Prior Art
Many data processing systems (e.g., computer systems, programmable electronic systems, telecommunication switching systems, control systems, and so forth) detect different types of errors. Some errors indicate a minor problem while other errors indicate a serious problem. Because data processing systems are being designed to offer higher percentages of xe2x80x9cup-time,xe2x80x9d it is critical to know how severe an error is and whether the system must be shut down to limit data corruption, or if the system can continue to operate without impact to the user.
These are some typical error levels of severity:
(1) An advisory error does not interrupt normal operations and is recorded only for informational purposes.
(2) A correctable error is an error that can be corrected by hardware or software and which is logged.
(3) An uncorrectable error is an error that may require some software help to keep the error contained and keep the system running.
(4) A fatal error is an error that can cause data corruption if the data processing system or subsystem is not halted immediately.
(5) A component failure is a catastrophic failure of a system component, such as a disk memory.
(6) A deadlock failure occurs when two or more processes are competing for the same resource and these processes cannot proceed to completion because the resource is unavailable.
There have been several ways to log and report errors in data processing systems. One type of prior art solution is to provide a single register holding the encoded status of the first, most severe error. In this system, a low severity error could be logged, but if a higher severity error occurs before the log is read, the higher severity error log information will overwrite the lower severity error log information. And in typical prior art systems, no ordering or address information is recorded in the error register to allow software or users to determine the sequence in which multiple errors have occurred. Such ordering and address information would be desirable to allow software or users to determine whether errors are genuine, or merely consequential artifacts of an earlier, genuine error. For example, a genuine error can produce multiple consequential errors of lesser or greater severity, that can overwrite or overwhelm the information concerning the earlier, genuine error. It can require considerable analysis time to determine that one or more consequential errors are unimportant artifacts of a genuine error.
It would be desirable to have the capability to record extensive information about errors, including address information and the sequence in which the errors occurred.
An object of the invention is to provide the capability to record extensive information about errors, including address information and the sequence in which the errors occurred.
A first aspect of the invention is directed to a method for indicating errors in a data processing system with a plurality of error levels. The method includes steps indicating that an error corresponds to an error level of the plurality of error levels, representing the error with a set of memory cells, and recording the order in which the error has occurred.
A second aspect of the invention is directed to a data processing system, having an error and an associated error level chosen from a plurality of error levels. The data processing system or error log system include a set of memory cells, with a primary error log to record the error, and at least one error logging register that can record information about the error.
A third aspect of the invention is directed to an error log system, including a set of registers to record an error corresponding to one of a plurality of error levels, including a primary error log to record at least one error having a corresponding error level, an error logging register corresponding to one of a plurality of error levels to record information about the error, and an error order register to record information about the order of occurrence of the error.
These and other objects and advantages of the invention will become apparent to those skilled in the art from the following detailed description of the invention and the accompanying drawings.